#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include "infirmier.h"
                                                                    /*SAISIR*/
void saisir_infirmier(Infirmier *I)
{
printf("donner le nom\n");
scanf("%s",I->nom);
printf("donner le prenom\n");
scanf("%s",I->prenom);
printf("donner le sex\n");
scanf("%s",I->sex);
printf("donner le role\n");
scanf("%s",I->role);
printf("donner le cin\n");
scanf("%ld",&(I->cin));
printf("donner le age\n");
scanf("%d",&(I->age));

}
                                                                  /*ENREGISTRER*/
void enregistrer_infirmier(char fichier_infirmier[],Infirmier *I,int *n_infirmier)
{
FILE *f;
f=fopen(fichier_infirmier,"ab");
if(f!=NULL)
{
 if((*n_infirmier)<MAX)
  {
 saisir_infirmier(I);
 fwrite(I,sizeof(Infirmier),1,f);
 (*n_infirmier)++;
  }
}
else
{
printf("erreur lors de l'ouverture du fichier_infirmier\n");
}
fclose(f);
}
                                                                   /*AFFICHER*/
void afficher_infirmier(char fichier_infirmier[],Infirmier I,long int cin)
{
FILE*f;

f=fopen(fichier_infirmier,"rb");
if(f!=NULL)
{
	fread(&I,sizeof(Infirmier),1,f);
   do  
  {
        if(cin==I.cin)
        {
        printf("nom:%s | prenom:%s | sex:%s | role:%s | cin:%ld | age:%d | identifiant:%d\n",I.nom,I.prenom,I.sex,I.role,I.cin,I.age,I.id_infirmier);
        }
  }
  while(((fread(&I,sizeof(Infirmier),1,f))!=0)&&(feof(f)!=1));
}
else
{
printf("erreur lors de l'ouverture du fichier_infirmier");
}
fclose(f);
}

                                                                      /*AFFICHER FICHIER*/
void afficher_liste_infirmier(char fichier_infirmier[])
{
FILE*f;
Infirmier I;
f=fopen(fichier_infirmier,"rb");
if(f!=NULL)
{
                strcpy(I.role," " ) ;
		strcpy(I.nom," " ) ;
		strcpy(I.prenom," " ) ;
                strcpy(I.sex," " ) ;
		I.cin=0 ;
		I.age=0 ;
                I.id_infirmier=0 ; 

   fread(&I,sizeof(Infirmier),1,f);
   do
  {
   printf("nom:%s | prenom:%s | sex:%s | role:%s | cin:%ld | age:%d | identifiant:%d\n",I.nom,I.prenom,I.sex,I.role,I.cin,I.age,I.id_infirmier);
  }
   while(((fread(&I,sizeof(Infirmier),1,f))!=0)&&(feof(f)!=1));
}
else
{
printf("erreur lors de l'ouverture du fichier_infirmier");
}
fclose(f);
}
                                                                         /*RECHERCHER*/
int recherche_infirmier(char fichier_infirmier[],Infirmier I,long int cin)
{
FILE*f;
f=fopen(fichier_infirmier,"rb");
if(f!=NULL)
{
	fread(&I,sizeof(Infirmier),1,f);
   do  
  {
        if(cin==I.cin)
        {
        return 1;
        }
  }
  while(((fread(&I,sizeof(Infirmier),1,f))!=0)&&(feof(f)!=1));
}
else
{
printf("erreur lors de l'ouverture du fichier_infirmier");
}
fclose(f);
}

                                                                    /*SUPPRIMER*/
void supprimer_infirmier( char fichier_infirmier[],long int cin)
{
    char tmp[]="tmp.txt";
    FILE *f ;
    FILE *t ;
    Infirmier I;

    f=fopen(fichier_infirmier,"rb") ;
    t=fopen(tmp,"wb") ;

    if (f!= NULL && t!=NULL)
     {
      while(fread(&I,sizeof(Infirmier),1,f)!=0)
       {
          if( cin!=I.cin)
            {
             fwrite(&I,sizeof(Infirmier),1,t) ;
            }
       }
     }

   
   printf(" cin  %ld supprimé\n",cin );
   

     fclose(f) ;
     fclose(t) ;

     f=fopen(fichier_infirmier,"wb") ;
     t=fopen(tmp,"rb") ;

     while(fread (&I,sizeof(Infirmier),1,t)!=0)
     {
     fwrite(&I,sizeof(Infirmier),1,f) ;
    }

     fclose(f) ;
     fclose(t) ;

}


                                                                         /*INISIALISER*/
void init_infirmier(char fichier_infirmier[])
{
FILE*f;
f=fopen(fichier_infirmier,"wb");
if(f!=NULL)
{
  printf("la liste est initialiser\n");
}           
else
{
printf("erreur lors de l'ouverture du fichier_infirmier\n");
}
fclose(f);
}

